﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using AG.Comunes.Entidades;
using System.Data;

namespace AG.Comunes.Base
{
    public partial class ControladorBase
    {
        private ServiciosBase _servicio;


        //public int BuscarSexo(IList<int> listasValoresDominio, int intBuscado)
        //{
        //    int retorno = null;

        //    if (listasValoresDominio != null)
        //        foreach (int listaDatosValores in listasValoresDominio)
        //        {
        //            if (listaDatosValores.ValorDeDominio == intBuscado.ValorDeDominio)
        //            {
        //                retorno = listaDatosValores;
        //                break;
        //            }
        //        }

        //    return retorno;
        //}

        /// <summary>
        /// Metodo que consulta todos los valores de dominio que posee un tipo de dominio
        /// </summary>
        /// <param name="tipoDeDominio">Tipo de dominios a consultar</param>
        /// <returns>lista de dominios</returns>
        public DataSet ConsultarListaDeValoresDeDominio(string tipoDeDominio)
        {
            _servicio = new ServiciosBase();
            DataSet listaRetorno = _servicio.ConsultarListaDeValoresDeDominio(tipoDeDominio);

            return listaRetorno;
        }

        /// <summary>
        /// Metodo que filtra los dataSet
        /// </summary>
        /// <param name="dataSetCompleto">DataSet completo con toda la consulta de la BD</param>
        /// <param name="valorFiltado">numero de dominio por el que se filtra</param>
        /// <param name="nombreCampo">Nombre del campo por el que se filtra</param>
        /// <returns>DataSet filtrado</returns>
        public DataSet FiltrarDataSet(DataSet dataSetCompleto, string valorFiltado,string nombreCampo)
        {
            DataSet dsFiltrado =new DataSet();
            DataTable dtFiltrado = new DataTable();

            dtFiltrado = dataSetCompleto.Tables[0].Clone();
            foreach (DataRow filas in dataSetCompleto.Tables[0].Select(nombreCampo + " ='" + valorFiltado + "'"))
                dtFiltrado.ImportRow(filas);
            
            dsFiltrado.Tables.Add(dtFiltrado);

            return dsFiltrado;
        }


    }
}
